unit uERP_RAD_Contador;

interface

uses
  Uni, uQuery;

type
  TRADContador = class

    {$REGION '<< Private >>'}

      private

      {$REGION '<< Atributes >>'}

        var m_DataSource_Contador: TUniDataSource;
        var m_Query_Contador: TMyQuery;

      {$ENDREGION}

    {$ENDREGION}

    {$REGION '<< Public >>'}

      public

      {$REGION '<< Methods >>'}

        {$REGION '<< Getter and Setter >>'}

          function GetDataSource_Contador(): TUniDataSource;
          function GetQuery_Contador(): TMyQuery;

        {$ENDREGION}

        constructor Create(); overload;

        function ExecuteSQL_Contador(): Boolean;

      {$ENDREGION}

    {$ENDREGION}

  end;

implementation

uses uERP_Constantes, SysUtils;

{$REGION '<< TRADContador >>'}

constructor TRADContador.Create;
begin
  inherited;
  Self.GetDataSource_Contador().DataSet := Self.GetQuery_Contador();
end;

function TRADContador.ExecuteSQL_Contador: Boolean;
begin
  Self.m_Query_Contador.SelectAll(
                          uERP_Constantes.c_Field_Contador,
                          uERP_Constantes.c_NomeTB_Contador,
                          uERP_Constantes.c_Field_Contador_Codigo
                        );
end;

function TRADContador.GetDataSource_Contador: TUniDataSource;
begin
  if not Assigned(m_DataSource_Contador)
    then m_DataSource_Contador := TUniDataSource.Create(nil);
  Result := m_DataSource_Contador;
end;

function TRADContador.GetQuery_Contador: TMyQuery;
begin
  if not Assigned(m_Query_Contador)
    then m_Query_Contador := TMyQuery.Create();
  Result := m_Query_Contador;
end;

{$ENDREGION}

end.
